#ifndef _WIRELESS_PROC_H
#define _WIRELESS_PROC_H


#define WIRELESS_CON_STA_MASK               ((1<<WIRELESS_CON_LINK_NB)-1)

struct wireless_cb_tag {
    uint8_t change_flag;
    uint8_t change_sta[2];

    uint8_t connected_sta;
    bool alg_en;
};

extern struct wireless_cb_tag wireless_cb;

typedef enum{
    //音源
    MIC_TYPE  = 1,
    SPK_TYPE,
    //编码
    ENCODER_PRIO_TRANS_TYPE,
    MIC_ENC_TYPE,
    SPK_ENC_TYPE,

    //解码
    DECODER_PRIO_TRANS_TYPE,
    MIC_DEC_TYPE,
    SPK_DEC_TYPE,
    //算法
    EQ_DRC_TYPE,
    AINS_TYPE,
    NR_FAR_TYPE,
    ECHO_TYPE,
    MAGCI_PITCH_SHIFT_TYPE,
    HOWLING_FREQ_SHIFT_TYPE,
    PLATE_REVERB_TYPE,
    ROOM_REVERB_TYPE,
    DNN_L1_TYPE,
    //输出
    USB_MIC_IN_TYPE,
    USB_AUDIO_OUT_TYPE,
    DAC_OUT_TYPE,
    IIS_TX_TYPE,
    HUART_TX_TYPE,
    HUART_DUMP_TYPE,
    //其它
    SRC_TYPE,
    MIC_MIX_TYPE,
    MIC_MIX_AUX_TYPE,
} MODULE_TYPE;

void wireless_mic_var_init(void);
u8 wireless_get_status(void);
void wireless_cmd_reset(u8 index);

/*****************************************************************************
 * Module    : 断开对应num的连接，发射端num为1，接收端为1或者2
 *****************************************************************************/
void le_mic_discon_by_mic_num(uint8_t mic_num);
void le_mic_discon_all(void);
#endif // _WIRELESS_PROC_H
